package cn.tedu.mybatisdemo.mapper;

import cn.tedu.mybatisdemo.pojo.Teacher;
import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface TeacherMapper {
    /**
     * Mybatis要求接口中的方法有如下规则:
     * ①方法名: 要求见名知意
     * ②方法返回值: 执行的SQL返回的结果,按照情况封装
     * ·查询的结果是一条记录,那么直接封装到实例中记录
     * ·查询的结果是多条记录,那么封装到List<封装的类型>
     * ·执行的SQL返回的是修改的记录数,那么可以设置int
     * ·执行的SQL不需要返回内容,设置为void
     * ③方法的参数: 后面再说
     */
    @Select("SELECT * FROM teacher")
    public List<Teacher> getTeacherAll();

    //添加的注解是@Insert添加一条数据 insert into teacher values(6666,'光头师傅'，22,‘宗师’，null,100000,50000,'男'，0);
    @Insert("Insert into teacher values(888,'孟继赟',22,'宗师',null,100000,50000,'男',0)")
    public int addTeacher();

    //修改表中名字叫做光头师傅的这条数据把他的工资修改为1000
    @Update("Update teacher set salary = 1000 where name = '光头师傅'")
    public  int updateTeacher();

    //删除表中名称为光头师傅的这条数据
    @Delete("Delete from teacher where name='孟继赟'")
    public int deleteTeacher();

}
